package com.xbongbong.paas.pojo.dto;

import com.xbongbong.paas.pojo.SelectedFormPojo;
import com.xbongbong.paas.toolbox.wrap.BaseDTO;
import com.xbongbong.paas.toolbox.wrap.QueryIgnore;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.constraints.Size;
import java.util.Arrays;
import java.util.List;

/**
 * @author: 梁鲁江
 * @date: 2019年1月9日08:56:21
 * @desrcption: 获取所有表单对象（type2,3）
 */
@Getter
@Setter
@ToString
public class FormAllListDTO extends BaseDTO {
    /**
     * 应用id
     */
    private List<Long> appIdList;
    /**
     * 菜单id
     */
    private Long menuId;
    /**
     * 只要2,3的数据
     */
    private List<Integer> typeIn;
    /**
     * 已选表单的业务类型
     */
    @Getter(onMethod_ = {@QueryIgnore})
    @Size(max = 5, message = "{dto.msg.formAllList.businessTypeList.Size}")
    private List<Integer> businessTypeList;
    /**
     * 已选表单的saas标记
     */
    @Getter(onMethod_ = {@QueryIgnore})
    @Size(max = 5, message = "{dto.msg.formAllList.saasMarkList.Size}")
    private List<Integer> saasMarkList;

    @Getter(onMethod_ = {@QueryIgnore})
    @Size(max = 5, message = "{dto.msg.formAllList.selectedFormList.Size}")
    private List<SelectedFormPojo> selectedFormList;
    /**
     * 删除标记
     */
    private Integer del;
    /**
     * 用于多表还是单表  和数据库里的另一个字段统一
     *   `single` tinyint(2) DEFAULT NULL COMMENT '1单表，0多表',
     */
    private Integer single;

    FormAllListDTO(){
        del = 0;
        typeIn = Arrays.asList(2,3);
        single = 1;
    }
}
